/*
n个人围成一个圆桌，按照顺时针的顺序1，2，...n进行编号；
某一个人开始报一个数字，然后顺时针的下一个人会报数+1；
当某个人报的数字含有7或是7的倍数时，这个人退出游戏，其他人接着报数！直到剩下一个人为止！
Input
输入n,m,t；n代表人数，m代表开始报数的人的编号；t表示开始报数的人报出的数字是t;
然后接下来有n行，是这n个人的名字！

Output
输出最后一个人的名字！

Sample Input
5 3 20
liming
wangze
gongxiangjun
wangming
chenzhen

Sample Output
chenzhen
*/
// 用队列解题
#include <bits/stdc++.h> //万能头文件
using namespace std;
// 判断一个数字是否含有7或是7的倍数
int ofSeven(int num)
{
    int temp = num;
    // 判断数字中是否包含7
    while (temp> 0)
    {
        if (temp % 10 == 7)
        {
            return 1; // 包含7
        }
        temp /= 10; // 去除数字的个位数
    }
    // 判断数字是否是7的倍数
    if (num % 7 == 0)
    {
        return 1; // 是7的倍数
    }
    return 0; // 不含7也不是7的倍数
}
int main()
{
    queue<string> q;
    int n, m, t, i, flag; // n为人数，m为开始报数的人的编号；t为第一个报出的数字;
    cin >> n >> m >> t;
    string name, s;
    for (i = 1; i <= n; i++)
    {
        cin >> name;
        q.push(name); // 生成初始队列
    }
    for (i = 1; i < m; i++) // 让 m号人在队列头部
    {
        s = q.front();
        q.pop();
        q.push(s);
    }
    while (q.size() > 1) // 队列留最后一个人
    {
        s = q.front();
        flag = ofSeven(t); // 报数为t
        q.pop();           // 出列
        if (flag != 1)  // 不含有7 或 不是7的倍数
        {
            q.push(s); // 回到队列
        }
        t++; // 下一个人的报数
    }
    cout << q.front() << endl; // 输出最后一个人
    return 0;
}